home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
NeXTSTEP 3.3 (Developer)…68k, x86, SPARC, PA-RISC]
/
NeXTSTEP 3.3 Dev Intel.iso
/
usr
/
lib
/
nib
/
app.make
next >
Wrap
Text File
|
1992-04-07
|
6KB
|
211 lines
#
# NOTE: Do NOT change this file -- InterfaceBuilder depends on it.
#
# useful macros to put into your Makefile.preamble to override the default
# values in the IB-generated Makefile:
# ENGLISH
# JAPANESE
#
# MAKEFILEDIR
# SOURCEMODE
# CFLAGS
# OBJCFLAGS
# PSWFLAGS
# LDFLAGS
# INSTALLFLAGS
# OTHER_LIBS
# OTHER_DEBUG_LIBS
# OTHER_PROF_LIBS
# OTHER_JAPANESE_LIBS
# OTHER_JAPANESE_DEBUG_LIBS
# OTHER_JAPANESE_PROF_LIBS
# OTHER_SOURCEFILES
# OTHER_OFILES
# OTHER_PRODUCT_DEPENDS
# OTHER_INSTALL_DEPENDS
# OTHER_GARBAGE
#
PRODUCT = $(NAME)
OFILE_DIR = obj
SUPPORTFILES = IB.proj Makefile makefile $(NAME).iconheader \
Makefile.preamble Makefile.postamble
SRCFILES = $(CLASSES) $(CLASSES:.m=.h) \
$(MFILES) $(CFILES) $(HFILES) $(PSWFILES) $(PSWMFILES) \
$(INTERFACES) $(TIFFFILES) $(EPSFILES) $(SNDFILES) \
$(OTHERSRCS) $(OTHER_SOURCEFILES) \
$(APPICON) $(DOCICONS)
OFILES = $(SUBPROJECTS:.subproj=.o) \
$(PSWFILES:.psw=.o) $(PSWMFILES:.pswm=.o) $(CLASSES:.m=.o) \
$(MFILES:.m=.o) $(CFILES:.c=.o)
EARLY_HEADERS = $(PSWFILES:.psw=.h) $(PSWMFILES:.pswm=.h) \
$(SUBPROJECTS:.subproj=.h)
PRODUCT_DEPENDS = $(EARLY_HEADERS) $(OFILE_DIR) \
$(OFILES) $(OTHER_OFILES) \
$(INTERFACES) $(TIFFFILES) $(EPSFILES) $(SNDFILES) \
$(APPICON) $(DOCICONS) $(OTHER_PRODUCT_DEPENDS)
INSTALL_DEPENDS = $(DSTROOT)$(INSTALLDIR) all $(OTHER_INSTALL_DEPENDS)
NIBLIBDIR = /usr/lib/nib
GARBAGE = $(PSWFILES:.psw=.c) $(PSWMFILES:.pswm=.m) \
$(NAME) $(NAME).debug $(NAME).profile \
obj debug_obj profile_obj \
$(OTHER_GARBAGE) gmon.out
APPICONFLAGS = -sectcreate __ICON __header $(NAME).iconheader \
-segprot __ICON r r $(ICONSECTIONS)
_CFLAGS = $(CFLAGS) -O -g -Wall
_LDFLAGS = $(LDFLAGS)
#
# user level targets
#
all::
@if [ "$(ENGLISH)" = "YES" -o "$(JAPANESE)" != "YES" ] ; then \
$(MAKE) $(PRODUCT) \
"ENGLISH=$(ENGLISH)" \
"JAPANESE=$(JAPANESE)" \
"MAKEFILEDIR=$(MAKEFILEDIR)" ; \
else \
$(MAKE) $(PRODUCT) \
"_CFLAGS=$(CFLAGS) -O -g -Wall -DKANJI" \
"ENGLISH=$(ENGLISH)" \
"JAPANESE=$(JAPANESE)" \
"MAKEFILEDIR=$(MAKEFILEDIR)" ; \
fi
debug $(PRODUCT).debug::
@if [ "$(ENGLISH)" = "YES" -o "$(JAPANESE)" != "YES" ] ; then \
$(MAKE) $(NAME).debug "PRODUCT = $(NAME).debug" \
"OFILE_DIR = debug_obj" \
"_CFLAGS = $(CFLAGS) -g -DDEBUG -Wall" \
"LIBS = $(DEBUG_LIBS)" \
"OTHER_LIBS = $(OTHER_DEBUG_LIBS)" \
"MAKEFILEDIR=$(MAKEFILEDIR)" ; \
else \
$(MAKE) $(NAME).debug "PRODUCT = $(NAME).debug" \
"OFILE_DIR = debug_obj" \
"_CFLAGS = $(CFLAGS) -g -DDEBUG -Wall -DKANJI" \
"LIBS = $(DEBUG_LIBS:lNeXT_s=lNeXTJ_s)" \
"OTHER_LIBS = $(OTHER_DEBUG_LIBS:lNeXT_s=lNeXTJ_s)" \
"OTHER_JAPANESE_LIBS = $(OTHER_JAPANESE_DEBUG_LIBS)" \
"MAKEFILEDIR=$(MAKEFILEDIR)" ; \
fi
profile $(PRODUCT).profile::
@if [ "$(ENGLISH)" = "YES" -o "$(JAPANESE)" != "YES" ] ; then \
$(MAKE) $(NAME).profile "PRODUCT = $(NAME).profile" \
"OFILE_DIR = profile_obj" \
"_CFLAGS = $(CFLAGS) -O -pg -Wall" \
"LIBS = $(PROF_LIBS)" \
"OTHER_LIBS = $(OTHER_PROF_LIBS)" \
"MAKEFILEDIR=$(MAKEFILEDIR)" ; \
else \
$(MAKE) $(NAME).profile "PRODUCT = $(NAME).profile" \
"OFILE_DIR = profile_obj" \
"_CFLAGS = $(CFLAGS) -O -pg -Wall -DKANJI" \
"LIBS = $(PROF_LIBS:lNeXT_p=lNeXTJ_p)" \
"OTHER_LIBS = $(OTHER_PROF_LIBS:lNeXT_p=lNeXTJ_p)" \
"OTHER_JAPANESE_LIBS = $(OTHER_JAPANESE_PROF_LIBS)" \
"MAKEFILEDIR=$(MAKEFILEDIR)" ; \
fi
clean:: $(NAME).clean $(SUBPROJECTS:.subproj=.clean)
installsrc:: $(NAME).installsrc $(SUBPROJECTS:.subproj=.installsrc)
install:: $(INSTALL_DEPENDS) $(NAME).install
depend:: Makefile.dependencies $(SUBPROJECTS:.subproj=.depend)
help::
@echo ' all (the default)'
@echo ' debug'
@echo ' profile'
@echo ' clean'
@echo ' installsrc SRCROOT=somepath'
@echo ' install [DSTROOT=somepath]'
@echo ' depend'
#
# Common functionality
#
include $(MAKEFILEDIR)/common.make
#
# app-specific functionality
#
$(PRODUCT):: $(PRODUCT_DEPENDS)
@if [ ${NOMACHO} ] ; then \
ldflags="$(_LDFLAGS) $(APPICONFLAGS)"; \
else \
ldflags="$(_LDFLAGS) $(APPICONFLAGS)"; \
nibseg=no; tiffseg=no; epsseg=no; sndseg=no; \
for i in $(INTERFACES) nonibfiles ; do \
if [ $$i = nonibfiles ] ; then continue; fi; \
nibseg=yes; \
ldflags="$$ldflags -sectcreate __NIB $$i $$i"; \
done; \
for i in $(TIFFFILES) notifffiles ; do \
if [ $$i = notifffiles ] ; then continue; fi; \
tiffseg=yes; \
ldflags="$$ldflags -sectcreate __TIFF $$i $$i"; \
done; \
for i in $(EPSFILES) noepsfiles ; do \
if [ $$i = noepsfiles ] ; then continue; fi; \
epsseg=yes; \
ldflags="$$ldflags -sectcreate __EPS $$i $$i"; \
done; \
for i in $(SNDFILES) nosndfiles ; do \
if [ $$i = nosndfiles ] ; then continue; fi; \
sndseg=yes; \
ldflags="$$ldflags -sectcreate __SND $$i $$i"; \
done; \
for i in $(LIBINTERFACES) nonibfiles ; do \
if [ $$i = nonibfiles ] ; then continue; fi; \
nibseg=yes; \
ldflags="$$ldflags -sectcreate __NIB $$i $(NIBLIBDIR)/$$i"; \
done; \
for i in $(LIBTIFFFILES) notifffiles ; do \
if [ $$i = notifffiles ] ; then continue; fi; \
tiffseg=yes; \
ldflags="$$ldflags -sectcreate __TIFF $$i $(NIBLIBDIR)/$$i"; \
done; \
for i in $(SUBPROJECTS:.subproj=.ldflags) none ; do \
if [ $$i = none ] ; then continue; fi; \
ldflags="$$ldflags `cat $(OFILE_DIR)/$$i`"; \
done; \
if [ $$nibseg = yes ] ; then \
ldflags="$$ldflags -segprot __NIB r r"; \
fi ; \
if [ $$tiffseg = yes ] ; then \
ldflags="$$ldflags -segprot __TIFF r r"; \
fi ; \
if [ $$epsseg = yes ] ; then \
ldflags="$$ldflags -segprot __EPS r r"; \
fi ; \
if [ $$sndseg = yes ] ; then \
ldflags="$$ldflags -segprot __SND r r"; \
fi ; \
fi ; \
if [ "$(ENGLISH)" = "YES" -o "$(JAPANESE)" != "YES" ] ; then \
echo $(CC) $(_CFLAGS) $$ldflags -o $(PRODUCT) $(OFILES) \
$(OTHER_OFILES) $(OTHER_LIBS) $(LIBS) ; \
$(CC) $(_CFLAGS) $$ldflags -o $(PRODUCT) $(OFILES) $(OTHER_OFILES) \
$(OTHER_LIBS) $(LIBS) ; \
else \
echo $(CC) $(_CFLAGS) $$ldflags -o $(PRODUCT) $(OFILES) \
$(OTHER_OFILES) $(OTHER_JAPANESE_LIBS) \
$(OTHER_LIBS:lNeXT_s=lNeXTJ_s) \
$(LIBS:lNeXT_s=lNeXTJ_s) ; \
$(CC) $(_CFLAGS) $$ldflags -o $(PRODUCT) $(OFILES) \
$(OTHER_OFILES) $(OTHER_JAPANESE_LIBS) \
$(OTHER_LIBS:lNeXT_s=lNeXTJ_s) \
$(LIBS:lNeXT_s=lNeXTJ_s) ; \
fi